package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 电动车信息对象 ev_vehicle
 * 
 * @author wtd1
 * @date 2025-11-15
 */
public class EvVehicle extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 电动车ID */
    private Long vehicleId;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String plateNumber;

    /** 品牌型号 */
    @Excel(name = "品牌型号")
    private String brand;

    /** 颜色 */
    @Excel(name = "颜色")
    private String color;

    /** 车辆照片（Base64） */
    @Excel(name = "车辆照片Base64")
    private String photoImage;

    /** 所属人ID（关联ev_person） */
    @Excel(name = "所属人ID", readConverterExp = "关=联ev_person")
    private Long ownerId;

    /** 入校审核状态（0未审核 1通过 2拒绝） */
    @Excel(name = "入校审核状态", readConverterExp = "0=未审核,1=通过,2=拒绝")
    private Integer auditStatus;

    /** 车辆状态（0封禁 1正常 2违规） */
    @Excel(name = "车辆状态", readConverterExp = "0=封禁,1=正常,2=违规")
    private Integer status;

    /** 车辆二维码（Base64） */
    @Excel(name = "车辆二维码Base64")
    private String qrImage;

    /** 原始主键（用于修改时更新主键） */
    private Long originalVehicleId;

    public void setVehicleId(Long vehicleId) 
    {
        this.vehicleId = vehicleId;
    }

    public Long getVehicleId() 
    {
        return vehicleId;
    }

    public void setPlateNumber(String plateNumber) 
    {
        this.plateNumber = plateNumber;
    }

    public String getPlateNumber() 
    {
        return plateNumber;
    }

    public void setBrand(String brand) 
    {
        this.brand = brand;
    }

    public String getBrand() 
    {
        return brand;
    }

    public void setColor(String color) 
    {
        this.color = color;
    }

    public String getColor() 
    {
        return color;
    }

    public void setPhotoImage(String photoImage) 
    {
        this.photoImage = photoImage;
    }

    public String getPhotoImage() 
    {
        return photoImage;
    }

    public void setOwnerId(Long ownerId) 
    {
        this.ownerId = ownerId;
    }

    public Long getOwnerId() 
    {
        return ownerId;
    }

    public void setAuditStatus(Integer auditStatus) 
    {
        this.auditStatus = auditStatus;
    }

    public Integer getAuditStatus() 
    {
        return auditStatus;
    }

    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }

    public void setQrImage(String qrImage) 
    {
        this.qrImage = qrImage;
    }

    public String getQrImage() 
    {
        return qrImage;
    }

    public Long getOriginalVehicleId()
    {
        return originalVehicleId;
    }

    public void setOriginalVehicleId(Long originalVehicleId)
    {
        this.originalVehicleId = originalVehicleId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("vehicleId", getVehicleId())
            .append("plateNumber", getPlateNumber())
            .append("brand", getBrand())
            .append("color", getColor())
            .append("photoImage", getPhotoImage())
            .append("ownerId", getOwnerId())
            .append("auditStatus", getAuditStatus())
            .append("status", getStatus())
            .append("qrImage", getQrImage())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("originalVehicleId", getOriginalVehicleId())
            .toString();
    }
}
